In the prior art, prior to viewing a video, a user needs to download video data to a video display client, then the video display client displays the video. During the process of downloading video data, in order to avoid congestion, a server needs to transmit the video data to the video display client in light of network bandwidth status.
Various transmission paths of various video data packets over a network and various forwarding devices passed may result in various transmission delays of various video data packets over the network, thus, delay variation is generated, therefore, the video cannot be smoothly displayed. In order to eliminate the delay variation, generally, a buffering mechanism is adopted by the client. A buffer area is reserved on the client, the client stores received data packets in the buffer area, sequences data in the buffer area, and performs decoding in accordance with the sequence, so that the video can be displayed smoothly, and the delay variation phenomenon is eliminated. Meanwhile, the client server reports the buffer area state to the server, so as to prevent the server from transmitting too many or too few data which may cause the buffer overflow or buffer overflow underflow occur at the buffer area.
In general, video display rates are dynamic changed during video display. To the server, merely being aware of the client's current buffer amount is not sufficient to estimate subsequent scheduling rates for the client server, therefore, it may be the result that the scheduling rate for transmitting data to the client server determined by the server is so high that the system efficiency is reduced, it may also be the result that the scheduling rate for transmitting data to the client server determined by the server is so low that the video display is suspended or interrupted, thereby degrading customer experience.